草庐IT

C++ 循环

全部标签

windows - 为什么我的 Windows 批处理文件在满足条件后一直循环?

基本上,我想将最新版本的MSI从服务器复制到我的本地计算机。我正在尝试遍历一个文件并获取包含最新版本MSI的第一行。我并不完全熟悉批处理文件中for循环和if语句的怪异之处。这是我找到第一行后不断循环的代码:cd%~dp0mkdir"c:\MyApp\QA\msi"remDeterminewhatfolderisthelatestversionofQAsetlocalenabledelayedexpansiondir/b/o-n"\\my-server\folder\another_folder\5.0.*">output.txtSET/acounter=1SETversion=""f

windows - 批处理文件中的循环读取文件路径文件

我想编写一个Windows批处理文件脚本,它将循环遍历FILEPATHS的文本文件,使用每个文件路径中的数据做一些工作,然后最终删除该文件。我首先运行FORFILES命令并发送其输出(@PATH参数是它匹配的任何文件的完整路径)到文本文件(results.txt)。我最终得到了这样一个results.txt文件:"C:/Windows/Dir1/fileA.log""C:/Windows/Dir1/fileA.log""C:/Windows/Dir2/fileC.log""C:/Windows/Dir3/fileB.log"我想做的是:使用FOR循环并读取results.txt文件中的

c - 无法使用for循环创建多个线程

我正在尝试使用for循环创建3个线程。以下是我的代码片段:DWORDWINAPIThreadProc0(LPVOIDparam){return0;}DWORDWINAPIThreadProc1(LPVOIDparam){return0;}DWORDWINAPIThreadProc2(LPVOIDparam){return0;}intWINAPIWinMain(HINSTANCEhInst,HINSTANCEhPrevInstance,LPSTRlpCmdLine,intnShowCmd){DWORDthreadId=0;intmax_number=1;//Startthethreads

创建 3 个线程并使用 WSAWaitForMultipleEvents() 和 WSAEnumNetworkEvents() 时 CPU 使用率 100%

我创建了3个线程,每个线程都有一个套接字。在每个线程中,套接字被设置为“事件驱动”,并且每当数据可供读取时,就会生成一个事件。该代码工作正常,但它占用CPU使用率高达100%,这肯定是不可取的。我想我犯了一些错误。下面是我的代码。请帮助我找出导致100%CPU使用率的错误。代码:DWORDWINAPIThreadProc(LPVOIDparam){intthreadNumber=(int)param;intPORT=8888+threadNumber;//sothateachthreadbind()sitssockettoadifferentPortnumber.WSADATAwsa;

c++ - 定期调用的 GetProcessTimes 返回相同的结果

我在一个循环中周期性地调用GetProcessTimes(),它在每次迭代中做同样的事情,但它似乎每次都产生相同的结果并且只是不时地改变。这是正常行为吗?结果不应该随着时间的推移发生一点变化吗?voidImCalledPeriodically(){staticconstDWORDdwPid=::GetCurrentProcessId();staticconstHANDLEhProc=::OpenProcess(PROCESS_QUERY_INFORMATION,FALSE,dwPid);staticFILETIMEftUnused1,ftUnused2;//Unused,mandato

windows - 以相反顺序循环目录中的文件

在DOS批处理文件中,我可以编写以下循环以按字母升序迭代目录中的文件:for%fin(*)do(echo%f)我如何做同样的事情,但以相反的顺序(字母降序)迭代文件? 最佳答案 从命令行:for/f"tokens=*"%fin('dir/b/o-n')do(echo%f)在一个bat文件中:for/f"tokens=*"%%fin('dir/b/o-n')do(echo%%f)/BUsesbareformat(noheadinginformationorsummary)./OListbyfilesinsortedorder.sort

c - 生成正确的 .DEF 文件以导出非静态函数和 GLOBALS

从aquestionaboutdetectingbadlinkagetoglobalsacrossdllboudaries开始,事实证明我需要修改PostgreSQL项目使用的.DEF文件生成器工具,以便它正确地为全局变量的.DEF条目发出DATA标记。问题我似乎无法使用Microsoft的工具找到一种方法来获得区分全局变量和函数的符号表列表,其中包括未在其定义站点初始化的全局变量。想法?断流方法该工具循环遍历dumpbin/symbols输出以生成.DEF文件。与我习惯的nm不同,dumpbin/symbols似乎不会为每个符号发出一个条目来指示符号类型-函数、已初始化变量、未初始化

c - 我想打开新的 cmd 提示符并从 cmd 提示符插入参数

我尝试启动cmd以打开新的cmd提示符,但我无法在新的cmd中提供命令行参数..我试过以下system("startcmd")>>"system("C:\\Windows\\System32\\ipconfig");不工作system(startsystem("C:\\Windows\\System32\\ipconfig"));不工作 最佳答案 正如DipakDDesai所说,您可以简单地使用system("cmd/cstartC:\\Windows\\System32\\ipconfig");但是如果您在非控制台应用程序中执行此

windows - 批处理脚本在 for 循环后结束

我有一个批处理文件,它执行一个程序以及顺序(编号)宏,并调用另一个批处理文件来监视它何时完成,然后开始下一次迭代。启动程序时我无法使用Start/wait或其他“排序”命令,因为它是使用我无法避免使用的批处理文件和语法启动的。一旦这个循环完成(对于典型的使用模式,在程序打开和关闭约120次之后),我需要再次打开它并运行一个不同的、非顺序的宏,但是一旦循环完成它就会失败。for/l%%xin(1,1,120)do(echo%%x"C:\FilePath\ProgramStart.bat"-macro"C:\FilePath\MyScript%%x.txt"timeout3start/wa

windows - 在FOR循环中通过复杂的调用检索%ERRORLEVEL%

在Windows批处理文件中,当程序调用因空格和多个选项而变得复杂时,我需要将程序执行的结果检索到一个变量中。经过大量讨论,使用CALL找到了一种解决方法:FOR/F"delims="%%GIN('CALL"C:\pathwithspaces\foo.bat""blahblah='foobar'blah"')dosetfoo=%%G请参阅以下问题以获取更多详细信息并了解上下文:Retrievecommandoutputtovariablewhencommandhasspaces实际上,批处理文件调用PostgreSQL9.3,如下所示:SETPSQL_EXE=C:\ProgramFil